package com.lvyq.myplayer.common.util

import android.content.ComponentName
import android.content.ServiceConnection
import android.os.IBinder
import android.widget.ImageView
import com.lvyq.myplayer.service.IService

/**
 * 文件描述：AudioServiceManager
 * 作者：lvyq
 * 创建时间：2025-07-07
 * 修改时间：2025-07-07
 */
interface AudioServiceManager {

    companion object{
        val connection by lazy { AudioConnection() }
        var iService: IService?= null
        class AudioConnection: ServiceConnection {
            /**
             * service 连接时
             */
            override fun onServiceConnected(name: ComponentName?, service: IBinder?) {
                iService=service as IService
                println("AudioServiceManager>连接成功")
            }

            //意外味断开连接
            override fun onServiceDisconnected(name: ComponentName?) {
                println("AudioServiceManager>意外断开")
                iService=null
            }

        }

    }



    // 唱针旋转动画
   fun startNeedleAnimation(needle:ImageView) {
        needle.pivotX = needle.width.toFloat()/2    // 以左侧为旋转支点
        needle.pivotY = 0f   // 以顶部为旋转支点
        // 设置初始旋转角度（20度倾斜）
        needle.rotation = -20f
        //确保唱针位于最上层
        needle.bringToFront()

    }

    /**
     * 唱针回位
     */
    fun resetNeedleAnimation(needle:ImageView) {

        needle.pivotX = needle.width.toFloat()/2    // 以左侧为旋转支点
        needle.pivotY = 0f   // 以顶部为旋转支点
        // 设置初始旋转角度（20度倾斜）
        needle.rotation = 0f
        //确保唱针位于最上层
        needle.bringToFront()

    }
}